#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <dirent.h> //目录名获取配合DIR

#define MAX_LEN 20 //最大长度
int length = 1;
//输入一串数，将其最小的放在第一位，次小的放在最后一位，再小的放在第二位，再再小的放在倒数第二位，以此类推。
int* fun(int number,int* new_arr) {
	//先判断是几位数
	int temp1 = number;
	while (1) {
		temp1 = temp1 / 10;
		if (temp1 == 0) {
			break;
		}
		length++;
	}

	int arr[MAX_LEN] = { 0 };
	for (int i = 0; i < MAX_LEN; i++) {
		arr[i] = number % 10;
		number /= 10;
	}


    //排序
	int temp2 = 0;
	for (int i = 0; i < length - 1; i++)
	{
		for (int j = 0; j < length - i - 1; j++)
		{
			if (arr[j] > arr[j + 1])
			{
				//交换
				temp2 = arr[j];
				arr[j] = arr[j + 1];
				arr[j + 1] = temp2;
			}
		}
	}

	//奇数放在前面，偶数放在后面
	int left = 0;
	int right = length - 1;
	for (int i = 0; i < length; i++)
	{
		if (i % 2 == 0) {					//偶数
				new_arr[left] = arr[i];
				left++;
		}
		else{								//奇数
				new_arr[right] = arr[i];
				right--;
		}
	}

	return new_arr;
}


int main(int argc, const char* argv[])
{
	int number;
	int new_arr[MAX_LEN] = { 0 };
    printf("请输入一个数:\n");
    scanf("%d", &number);
	fun(number,new_arr);

	printf("new_arr中的数：\n");
	for (int i = 0; i < length; i++) {
		printf("%d",new_arr[i]);	
	}
	printf("\n\n");
    return 0;

}


